Manipulace s JPEGem
Otázka od: EFG Developer
3. 12. 2002 7:58
Zdravim všechny,
Potreboval bych nejakym zpusobem udelat toto:
Nacist JPEG, vyriznout z nej nejaky ctverec a ten ctverec ulozit do
jinyho JPG.
Jak na to? Musim to delat prez bitmapy?
V 1001 T&T je vtipu 303 priklad na zkopirovani casti jedne bitmapy do
druhe, ale ja to potrebuju udelat pro JPG.
Musim to teda 2x konvertovat (jpg1 -> bmp1, kopie casti bmp1 do bmp2,
bmp2 -> jpg2)?
Prosim nakopnete me
Diky
Petr Sikola
Odpovedá: Peter Surovy
3. 12. 2002 12:47
Ahoj
----- Original Message -----
From: "EFG Developer" <developer@efg.cz>
Sent: Tuesday, December 03, 2002 6:49 AM
> Potreboval bych nejakym zpusobem udelat toto:
> Nacist JPEG, vyriznout z nej nejaky ctverec a ten ctverec ulozit do
> jinyho JPG.
> Jak na to? Musim to delat prez bitmapy?
--- ano
> V 1001 T&T je vtipu 303 priklad na zkopirovani casti jedne bitmapy do
> druhe, ale ja to potrebuju udelat pro JPG.
-- no musis to urobit rovnako a potom tu novu bitmapu
pomocou assign priradit do TJPEG objektu a ulozit
cez SaveToFile.
> Musim to teda 2x konvertovat (jpg1 -> bmp1, kopie casti bmp1 do bmp2,
> bmp2 -> jpg2)?
---presne tak .. inak to nejde
PS
Odpovedá: EFG Developer
3. 12. 2002 13:20
> > Musim to teda 2x konvertovat (jpg1 -> bmp1, kopie casti
> bmp1 do bmp2,
> > bmp2 -> jpg2)?
> ---presne tak .. inak to nejde
>
> PS
OK, uz to mam hotovy presne takhle.
Petr
PS: kdyby to nekdo chtel...
----------------------------------
J1 := TJPegImage.Create;
B1 := TBitmap.Create;
B2 := TBitmap.Create;
J1.LoadFromFile('vstup.jpg');
B1.Assign(J1);
Rct := Rect(10,10,100,100);
B2 := TBitmap.Create;
B2.Width := 90;
B2.Height := 90;
B2.Canvas.CopyRect(rect(0,0,90,90), B1.canvas, rct);
J1.Assign(B2);
J1.SaveToFile('vystup.jpg');
B2.free;
J1.free;
B1.free;